package com.ruoyi.system.mapper;

import java.util.List;
import com.ruoyi.system.domain.CreditWaterActivity;

/**
 * 护水活动Mapper接口
 * 
 * @author ruoyi
 * @date 2024-01-26
 */
public interface CreditWaterActivityMapper 
{
    /**
     * 查询护水活动
     * 
     * @param activityId 护水活动主键
     * @return 护水活动
     */
    public CreditWaterActivity selectCreditWaterActivityByActivityId(Long activityId);

    /**
     * 查询护水活动列表
     * 
     * @param creditWaterActivity 护水活动
     * @return 护水活动集合
     */
    public List<CreditWaterActivity> selectCreditWaterActivityList(CreditWaterActivity creditWaterActivity);

    /**
     * 查询可用护水活动列表
     * 
     * @return 护水活动集合
     */
    public List<CreditWaterActivity> selectAvailableWaterActivities();

    /**
     * 根据类型查询护水活动
     * 
     * @param activityType 活动类型
     * @return 护水活动集合
     */
    public List<CreditWaterActivity> selectWaterActivitiesByType(String activityType);

    /**
     * 新增护水活动
     * 
     * @param creditWaterActivity 护水活动
     * @return 结果
     */
    public int insertCreditWaterActivity(CreditWaterActivity creditWaterActivity);

    /**
     * 修改护水活动
     * 
     * @param creditWaterActivity 护水活动
     * @return 结果
     */
    public int updateCreditWaterActivity(CreditWaterActivity creditWaterActivity);

    /**
     * 删除护水活动
     * 
     * @param activityId 护水活动主键
     * @return 结果
     */
    public int deleteCreditWaterActivityByActivityId(Long activityId);

    /**
     * 批量删除护水活动
     * 
     * @param activityIds 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteCreditWaterActivityByActivityIds(Long[] activityIds);

    /**
     * 更新活动参与人数
     * 
     * @param activityId 活动ID
     * @return 结果
     */
    public int updateActivityParticipants(Long activityId);
} 